﻿using System;
using System.Collections.Generic;

namespace Reactor.Messaging.ServiceBus
{
    public class MessageHandlerRegistration
    {
        /// <summary>
        /// Initializes a new instance of the <see cref="MessageHandlerRegistration"/> class.
        /// </summary>
        public MessageHandlerRegistration()
        {
            ExpectedDestinations = new List<IMessagingChannel>();
        }

        /// <summary>
        /// Gets or sets the type of the message handler.
        /// </summary>
        /// <value>The type of the message handler.</value>
        public Type MessageHandlerType { get; set; }

        /// <summary>
        /// Gets or sets the type of the message.
        /// </summary>
        /// <value>The type of the message.</value>
        public Type MessageType { get; set; }

        /// <summary>
        /// Gets or sets the expected destinations.
        /// </summary>
        /// <value>The expected destinations.</value>
        public IList<IMessagingChannel> ExpectedDestinations { get; set; }
    }
}
